package day06;

import java.lang.reflect.Array;
import java.util.Arrays;

public class HomeWork1 {
    public static void main(String[] args) {
        /*
        1. MaxOfArray求数组元素最大值并放在最后一个元素的下一个位置
        要求：声明整型数组并填充随机数据，找到最大值，将数组扩容并将最大值放末尾
        2. 方法的练习：
        要求：
        - 定义say()无参无返回值方法，调用测试
        - 定义sayHi()有一个参无返回值方法，调用测试
        - 定义sayHello()有两个参无返回值的方法，调用测试
        - 定义getNum()无参有返回值方法，演示return的用法，调用测试
        - 定义plus()两个参有返回值方法，调用测试
        - 定义testArray()用于生成整型数组填充随机数并返回数组，调用测试
        */

        /*
        1.MaxOfArray求数组元素最大值并放在最后一个元素的下一个位置：声明整型数组并填充随机数据，
        找到最大值，将数组扩容并将最大值放末尾
         */
        int[] a=new int[10];
        int max=a[0];
        for (int i=0;i<a.length;i++){
            a[i]=(int)(Math.random()*100);
            System.out.println(a[i]);
            if (max<a[i]){
                max=a[i];
            }
        }
        System.out.println("max="+max);
        a= Arrays.copyOf(a,a.length+1);
        a[a.length-1]=max;
        for (int i=0;i<a.length;i++){
            System.out.println(a[i]);
        }



        /*
        2.方法的练习：参数
        - 定义say()无参无返回值方法，调用测
        - 定义sayHi()有一个参无返回值方法，调用测
        - 定义sayHello()有两个参无返回值的方法，调用测试
        */
        //无参无返
        say();
        //有参无反
        sayHi("九亿少女的梦");
        sayHello("九亿少女的梦",25);
        sayHello("九亿少女的梦",65);




        /*
        3.方法的练习：返回值
        - 定义getNum()无参有返回值方法，演示return的用法，调用测
        - 定义plus()两个参有返回值方法，调用测
        - 定义testArray()用于生成整型数组填充随机数并返回数组，调用测试
        */
        //无参有返
        double c=getNum();
        System.out.println(c);
        //；两个参有返
        int d=plus(10,20);
        System.out.println(d);
        int m=60,n=90;
        int e=plus(m,n);
        System.out.println(e);
        //数组
        int[] r=testArray(10,100);
        System.out.println(r.length);
        System.out.println(r[0]);
        int[] t=testArray(20,1000);
        for (int i=1;i<t.length;i++){
            System.out.println(t[i]);
        }





    }

    /*
     2.方法的练习：参数
     - 定义say()无参无返回值方法，调用测
     - 定义sayHi()有一个参无返回值方法，调用测
     - 定义sayHello()有两个参无返回值的方法，调用测试
    */
    //无参无返
    public static void say(){
        System.out.println("我是九亿少女的梦");
    }

    //有参无返
    public static void sayHi(String name){
        System.out.println("我是"+name);
    }
    //两个参无返
    public static void sayHello(String name, int age){
        if (age>60){
            return;
        }
        System.out.println("大家好，我是"+name+"，今年"+age+"岁了");
    }

    /*
    3.方法的练习：返回值
        - 定义getNum()无参有返回值方法，演示return的用法，调用测试
        - 定义plus()两个参有返回值方法，调用测试
        - 定义testArray()用于生成整型数组填充随机数并返回数组，调用测试
     */
    //无参有返
    public static double getNum(){
        return (8.88);
    }
    //两个参有返
    public static int plus(int num1,int num2){
        int num=num1+num2;
        return (num);
    }
    //整型
    public static int[] testArray(int len,int max1){
        int[] arr=new int[len];
        for (int i=0;i<arr.length;i++){
            arr[i]=(int)(Math.random()*(max1+1));
        }
        return (arr);
    }










}
